μKanren: A Minimal Functional Core for Relational Programming
نویسندگان
چکیده
This paper presents μKanren, a minimalist language in the miniKanren family of relational (logic) programming languages. Its implementation comprises fewer than 40 lines of Scheme. We motivate the need for a minimalist miniKanren language, and iteratively develop a complete search strategy. Finally, we demonstrate that through suf cient user-level features one regains much of the expressiveness of other miniKanren languages. In our opinion its brevity and simple semantics make μKanren uniquely elegant.
منابع مشابه
Posynomial geometric programming problem subject to max–product fuzzy relation equations
In this article, we study a class of posynomial geometric programming problem (PGPF), with the purpose of minimizing a posynomial subject to fuzzy relational equations with max–product composition. With the help of auxiliary variables, it is converted convert the PGPF into an equivalent programming problem whose objective function is a non-decreasing function with an auxiliary variable. Some pr...
متن کاملLinear programming on SS-fuzzy inequality constrained problems
In this paper, a linear optimization problem is investigated whose constraints are defined with fuzzy relational inequality. These constraints are formed as the intersection of two inequality fuzzy systems and Schweizer-Sklar family of t-norms. Schweizer-Sklar family of t-norms is a parametric family of continuous t-norms, which covers the whole spectrum of t-norms when the parameter is changed...
متن کاملEliminating Impedance Mismatch in C++
Recently, the C and the VISUAL BASIC communities were tantalized by the advent of LINQ [18]—the Language INtegrated Query technology from Microsoft. LINQ represents a set of language extensions relying on advanced (some say hard to understand) techniques drawn from functional languages such as type inference, λexpressions and most importantly, monads. The 3 edition of C just as the 9 of VISUAL ...
متن کاملA constraint solver for software engineering: finding models and cores of large relational specifications
Relational logic is an attractive candidate for a software description language, because both the design and implementation of software often involve reasoning about relational structures: organizational hierarchies in the problem domain, architectural configurations in the high level design, or graphs and linked lists in low level code. Until recently, however, frameworks for solving relationa...
متن کاملFunctional-Logic Integration via Minimal Reciprocal Extensions
RELFUN reciprocally extends Horn RELations and call-by-value FUNctions just enough to yield a uniied operator concept. Relations acquire application nesting and higher-order notation; functions acquire non-groundness and non-determinism. Relations are deened by Horn-like clauses implicitly returning true; functions are deened by rules with an additional returned-value premise. This minimal rela...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2013